# # 定义一个圆形类,半径是这个圆形的属性,实例化一个半径为5的圆形,一个半径为10的圆形，定义方法计算圆形的面积和周长
# class Circular():
#     def __init__(self, r):
#         self.r = r
#
#     def getPerimeter(self):
#         # 计算圆的周长
#         return 2*self.r*3.14
#
#     def getArea(self):
#         # 计算圆的面积
#         return 3.14*self.r**2
#
# y1 = Circular(5)
# y2 = Circular(10)
# # 获取圆1的面积
# print(y1.getArea())
# # 获取圆1的周长
# print(y1.getPerimeter())
# # 获取圆2的面积
# print(y2.getArea())
# # 获取圆2的周长
# print(y2.getPerimeter())


# 补充代码，实现用户登录和注册
class User:
    def __init__(self, name, pwd):
        self.name = name
        self.pwd = pwd

class Account:
    def __init__(self):
        # 用户列表，数据格式：[user对象，user对象，user对象]
        self.user_list = []

    def login(self):
        """
        用户登录，输入用户名和密码然后去self.user_list中校验用户合法性
        :return:
        """
        name = input("请输入用户名:")
        pwd = input("请输入密码:")
        name_list = []
        for i in self.user_list:
            name_list.append(i.name)
        if name in name_list:
            for i in self.user_list:
                if name == i.name:
                    if pwd == i.pwd:
                        print("登录成功,请继续操作!")
                    else:
                        print("用户名或密码不正确!")
                else:
                    pass
        else:
            print("用户名或密码不正确!")

    def register(self):
        """
        用户注册，没注册一个用户就创建一个user对象，然后添加到self.user_list中，表示注册成功。
        :return:
        """
        print("开始进行用户注册")
        while True:
            name = input("请输入你要注册的用户名:")
            if len(self.user_list) == 0:
                break
            else:
                name_list = []
                for i in self.user_list:
                    name_list.append(i.name)
                if name in name_list:
                    print("用户名重复,请重新输入!")
                else:
                    break
        pwd1 = input("请输入用户密码:")
        pwd2 = input("请再次输入用户密码:")
        if pwd1 == pwd2:
            # user = User(name, pwd)
            # self.user_list.append(user)
            self.user_list.append(User(name, pwd1))
            print("用户注册成功!")
        else:
            print("两次输入密码不一致,请重新操作!")

    def run(self):
        """
        主程序
        :return:
        """
        print("欢迎使用本程序".center(50, "*"))
        while True:
            print("请输入你想运行的功能:1.注册,2.登录,3.退出")
            value = input()
            if value == '1':
                self.register()
            elif value == '2':
                self.login()
            elif value == '3':
                print("退出程序,欢迎下次使用".center(50, "*"))
                break


if __name__ == '__main__':
    obj = Account()
    obj.run()